Data may be stored in many types of storage mechanisms, such as databases and file servers. Each storage mechanism typically has its own means of access. For example, the SQL protocol is typically used to perform operations on a database, and the NFS protocol is typically used to perform operations on a file system. The SQL protocol is an ANSI standard for accessing and manipulating data stored in a database. The NFS protocol is a distributed file system protocol that supports the performance of file operations on files across a network. NFS is a well-known standard for sharing files between UNIX hosts.
In the NFS protocol, file system operations are performed on files using a filehandle, which is an identifier that identifies a particular resource. The current version of NFS, version 4 (which is specified in RFC 3530 and RFC 3010) supports additional functionality over version 3, such as enhancements to security and to the performance of stateful operations.
It is desirable to access as many kinds of data as possible from a single storage mechanism. For example, minimizing of the number of different types of storage mechanisms that are used to store and access data tends to reduce the amount of resources required to maintain the storage mechanisms. Also, accessing as many kinds of data as possible from a central location, such as a database, promotes ease of use and security, as data need not be accessed from a plurality of mechanisms that each enforce different security policies. Consequently, performing file operations upon as many files as possible through a centralized access mechanism is desirable.
Approaches for accessing resources using a file system operation protocol in a database management system are disclosed in U.S. patent application Ser. No. 11/014,354. According to these approaches, files may be stored in a file system repository maintained by a database server. Clients may perform file system operations on files, stored in the file system repository implemented by a database, by communicating with a database server using a file system operation protocol, such as the NFS protocol.
Various file system protocols, such as the NFS protocol, support file system operations involving a link. For example, using version 4.0 of the NFS protocol, a user may create a link from a first resource to a second resource by executing a CREATE or LINK command. As a result, it is desirable to perform file system operations that involve a link upon resources stored in a file system repository implemented by a database.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.